package module03.task01;

import java.util.Scanner;

/**
 *  编程统计字符串"ABCD123!@#$%ab"中大写字母、小写字母、数字、其它字符的个数并打印出来。
 */
public class StringCounterTest {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入任意字符,将返回字符个数:");
        String str = sc.nextLine();
        countChar(str);
    }

    public static void countChar(String str) {
        char[] ch = str.toCharArray();
        int upperCount = 0;
        int lowerCount = 0;
        int numCount = 0;
        int otherCount = 0;
        for (int i = 0; i < ch.length; i++) {
            // 统计大写数字
            if(ch[i] >= 65 && ch[i] <= 90) {
                upperCount++;
            // 统计小写数字
            }else if(ch[i] >= 97 && ch[i] <= 122) {
                lowerCount++;
            // 统计数字
            }else if(ch[i] >= 48 && ch[i] <= 57) {
                numCount++;
            // 统计其他字符
            }else {
                otherCount++;
            }
        }
        System.out.println("大写字母有:"+upperCount+"个");
        System.out.println("小写字母有:"+lowerCount+"个");
        System.out.println("数字有:"+numCount+"个");
        System.out.println("其他字符有:"+otherCount+"个");
    }
}

